 
typedef struct _PlaceListElement {
    PLACE* element_value;
    struct _PlaceListElement *next;
} PlaceListElement;
 
typedef struct _PlaceList {
    PlaceListElement *first;
    PlaceListElement *last;
} PlaceList;

void place_list_append_constant_time (PlaceList *list, PLACE* element_value);
 
PlaceList* place_list_create ();

PLACE* place_list_pop (PlaceList *list);

void place_list_clear (PlaceList* list);

BOOL place_list_is_empty (PlaceList* list);

PLACE* place_list_element_at (PlaceList* list, int index);
